﻿#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>


//单目操作符 — 只有一个操作数
//1、！ 逻辑反操作
//2、&  取地址  &a - 取出a的地址
//3、sizeof 操作数的类型长度（以字节为单位） 不是函数
//4、~  对一个数的二进制位按位取反

// & * 用于指针
//int main()
//{
//	int a = 10;
//	//* 代表pa是指针变量，int 代表pa的类型是整形
//	int* pa = &a;
//
//	*pa = 20;//* 是解引用操作符 - 单目操作符 - 通过pa中存放的地址，找到指向的空间
//	int c = *pa;
//	printf("%d", c);
//	return 0;
//}

//--前置，后置--
//++前置，后置++
//int main()
//{
//	int a = 5;
//	int b = a++;//后置++，先使用，后++
//	//b=a，a=a+1
//	printf("%d\n", b);// b = 5
//	printf("%d\n", a);// a = 6
//
//	int c = ++a;//前置++，先++，后使用
//	//a = a + 1 , c = a
//	printf("%d\n", c);// c = 7
//	printf("%d\n", a);// a = 7
//
//	return 0;
//}

//如果在unsigned int 中输入负数，那么该负数是以补码的形式储存到unsigned int中

//int Count(unsigned int m)
//{
//	int count = 0;
//	while (m)
//	{
//		if (m & 1)
//		{
//			count++;
//		}
//		m >>= 1;
//	}
//	return count;
//}
//
//int main()
//{
//	int a = 0;
//	printf("请输入一个数:");
//	scanf("%d", &a);
//	
//	printf("这个数的二进制位的1的个数为:%d", Count(a));
//	return 0;
//
//}